chore(deps): update dependency ruff to ^0.4.0 - autoclosed #28
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^0.3.5
->^0.4.0
Release Notes
astral-sh/ruff (ruff)
v0.4.1
Compare Source
Preview features
pylint
] Implementinvalid-hash-returned
(PLE0309
) (#10961)pylint
] Implementinvalid-index-returned
(PLE0305
) (#10962)Bug fixes
pylint
] AllowNoReturn
-like functions for__str__
,__len__
, etc. (PLE0307
) (#11017)ruff
] Ignore stub functions inunused-async
(RUF029
) (#11026)v0.4.0
Compare Source
A new, hand-written parser
Ruff's new parser is >2x faster, which translates to a 20-40% speedup for all linting and formatting invocations.
There's a lot to say about this exciting change, so check out the blog post for more details!
See #10036 for implementation details.
A new language server in Rust
With this release, we also want to highlight our new language server.
ruff server
is a Rust-powered languageserver that comes built-in with Ruff. It can be used with any editor that supports the Language Server Protocol (LSP).
It uses a multi-threaded, lock-free architecture inspired by
rust-analyzer
and it will open the door for a lotof exciting features. It’s also faster than our previous Python-based language server
-- but you probably guessed that already.
ruff server
is only in alpha, but it has a lot of features that you can try out today:ruff.applyAutofix
,ruff.applyFormat
, andruff.applyOrganizeImports
source.fixAll
andsource.organizeImports
source actionsTo setup
ruff server
with your editor, refer to the README.md.Preview features
pycodestyle
] Do not triggerE3
rules ondef
s following a function/method with a dummy body (#10704)pylint
] Implementinvalid-bytes-returned
(E0308
) (#10959)pylint
] Implementinvalid-length-returned
(E0303
) (#10963)pylint
] Implementself-cls-assignment
(W0642
) (#9267)pylint
] Omit stubs frominvalid-bool
andinvalid-str-return-type
(#11008)ruff
] New ruleunused-async
(RUF029
) to detect unneededasync
keywords on functions (#9966)Rule changes
flake8-bandit
] Allowurllib.request.urlopen
calls with staticRequest
argument (S310
) (#10964)flake8-bugbear
] Treatraise NotImplemented
-only bodies as stub functions (B006
) (#10990)flake8-slots
] Respect same-fileEnum
subclasses (SLOT000
) (#11006)pylint
] Support inverted comparisons (PLR1730
) (#10920)Linter
--show-settings
(#11003)BuiltinTypeChecker
(#10976)RuleTable::any_enabled
(#10971)Server
This section is devoted to updates for our new language server, written in Rust.
Configuration
RUFF_OUTPUT_FILE
environment variable support (#10992)Bug fixes
non-augmented-assignment
for reversed, non-commutative operators (PLR6104
) (#10909)PLR6104
) (#10912)per-file-ignores
forRUF100
on blanket# noqa
(#10908)if
expression for parenthesized with items parsing (#11010)FOR_TARGET
context for all kinds of parentheses (#11009)v0.3.7
Compare Source
Preview features
flake8-bugbear
] Implementloop-iterator-mutation
(B909
) (#9578)pylint
] Implement rule to prefer augmented assignment (PLR6104
) (#9932)Bug fixes
pylint
] Recodenan-comparison
rule toW0177
(#10894)pylint
] Reverse min-max logic inif-stmt-min-max
(#10890)v0.3.6
Compare Source
Preview features
pylint
] Implementbad-staticmethod-argument
(PLW0211
) (#10781)pylint
] Implementif-stmt-min-max
(PLR1730
,PLR1731
) (#10002)pyupgrade
] Replacestr,Enum
multiple inheritance withStrEnum
UP042
(#10713)refurb
] Implementif-expr-instead-of-or-operator
(FURB110
) (#10687)refurb
] Implementint-on-sliced-str
(FURB166
) (#10650)refurb
] Implementwrite-whole-file
(FURB103
) (#10802)refurb
] Supportitemgetter
inreimplemented-operator
(FURB118
) (#10526)flake8_comprehensions
] Addsum
/min
/max
to unnecessary comprehension check (C419
) (#10759)Rule changes
pydocstyle
] Require capitalizing docstrings where the first sentence is a single word (D403
) (#10776)pycodestyle
] Ignore annotated lambdas in class scopes (E731
) (#10720)flake8-pyi
] Various improvements to PYI034 (#10807)flake8-slots
] Flag subclasses of call-basedtyping.NamedTuple
s as well as subclasses ofcollections.namedtuple()
(SLOT002
) (#10808)pyflakes
] Allow forward references in class bases in stub files (F821
) (#10779)pygrep-hooks
] Improveblanket-noqa
error message (PGH004
) (#10851)CLI
FORCE_COLOR
env var (#10839)Configuration
[extend-]per-file-ignores
(#10852)Bug fixes
flake8-import-conventions
] Accept non-aliased (but correct) import inunconventional-import-alias
(ICN001
) (#10729)flake8-quotes
] Add semantic model flag when inside f-string replacement field (#10766)pep8-naming
] Recursively resolveTypeDicts
for N815 violations (#10719)flake8-quotes
] RespectQ00*
ignores inflake8-quotes
rules (#10728)flake8-simplify
] Show negated condition inneedless-bool
diagnostics (SIM103
) (#10854)ruff
] Use within-scope shadowed bindings inasyncio-dangling-task
(RUF006
) (#10793)flake8-pytest-style
] Fix single-tuple conversion inpytest-parametrize-values-wrong-type
(PT007
) (#10862)flake8-return
] Ignore assignments to annotated variables inunnecessary-assign
(RET504
) (#10741)refurb
] Do not allow any keyword arguments forread-whole-file
inrb
mode (FURB101
) (#10803)pylint
] Don't recommend decorating staticmethods with@singledispatch
(PLE1519
,PLE1520
) (#10637)pydocstyle
] Use section name range for all section-related docstring diagnostics (#10740)# noqa
directives on__all__
openers (#10798)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.